package day06;

import java.util.Arrays;
import java.util.Random;
import java.util.Scanner;

public class MapOfArrayDemo {
    public static void main(String[] args) {
        System.out.println("创建数组的长度");
        int[] array = intarray();//创建随机数组array
        pr(array);//输出array数组
//        System.out.println(Arrays.toString(array));
//        Arrays.sort(array);//数组从小到大顺序排序
//        array = arrayAdd(array,1);//数组扩容一位
//        array = arrayend(array,getmax(array));//最大值放在末位
//        pr(array);//输出数组
//        contrarypr(array);//反向输出数组
//        max(array);//数组最大值
//        min(array);//数组最小值
    }
    //将传的值放于数组最后一位
    public static int[] arrayend(int[] array,int a){
        array[array.length-1]=a;//将值放于数组array最后一位
        return array;
    }
    //将数组扩容a位
    public static int[] arrayAdd(int[] array,int dilatation){
        array = Arrays.copyOf(array,array.length+dilatation);//将数组array扩容a位
        return array;
    }
    //创建随机数组
    public static int[] intarray(){
        int num = intScan();
        int[] array = new int[num];
        for (int i = 0; i < array.length; i++) {
            array[i] = intRand();
//                System.out.println(i+1+"\t"+array[i]);
        }
        return array;
    }
    //1000以内随机数
    public static int intRand(){
        Random rd = new Random();
        int a = rd.nextInt(1001);
        return a;
    }
    //输入数据
    public static int intScan(){
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        return a;
    }
    //输出最大值
    public static int getmax(int array[]){
        int max=array[0];
        for (int i = 1; i < array.length; i++) {
            if (array[i]>max){
                max = array[i];
            }
        }
        return max;

    }
    //最大值
    public static void max(int array[]){
        int id = 1;
        int max=array[0];
        for (int i = 1; i < array.length; i++) {
            if (array[i]>max){
                max = array[i];
                id = i+1;
            }
//            System.out.println(id+"\t"+max);
        }
        System.out.println(id+"\t"+max);

    }
    //最小值
    public static void min(int array[]){
        int id = 1;
        int min=array[0];
        for (int i = 1; i < array.length; i++) {
            if (array[i]<min){
                min = array[i];
                id = i+1;
            }
//            System.out.println(id+"\t"+max);
        }
        System.out.println(id+"\t"+min);

    }
    //输出数组内容
    public static void pr(int array[]){
        for (int i = 0; i < array.length; i++) {
            System.out.println(i+1+"\t"+array[i]);
        }
    }
    //反向输出数组内容
    public static void contrarypr(int array[]){
        for (int i = array.length-1,j = 1; i >= 0; i--,j++) {
            System.out.println(j+"\t"+array[i]);
        }
    }
}
